﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Runtime.Serialization;
using System.Text;

namespace Ocean.His.MedicalInsurance
{
    [DataContract]
    public class SI1062Data
    {
        /// <summary>
        /// 科室名称
        /// </summary>
        [DataMember(Name = "office_name")]
        public string OfficeName { get; set; }

        /// <summary>
        /// 医保科室编号
        /// </summary>
        [DataMember(Name = "office_id")]
        public string OfficeId { get; set; }

        /// <summary>
        /// 操作员姓名
        /// </summary>
        [DataMember(Name = "operator_name")]
        public string OperatorName { get; set; }

        /// <summary>
        /// 操作员编码
        /// </summary>
        [DataMember(Name = "operator_id")]
        public string OperatorId { get; set; }

        /// <summary>
        /// IP信息
        /// </summary>
        [DataMember(Name = "term_ip")]
        public string TermIp { get; set; }

        /// <summary>
        /// 终端ID
        /// </summary>
        [DataMember(Name = "term_id")]
        public string TermId { get; set; }

        /// <summary>
        /// 用码业务类型
        /// </summary>
        [DataMember(Name = "business_type")]
        public string BusinessType { get; set; }
    }

    [DataContract]
    public class SI1062InputModel
    {
        [DataMember(Name = "data")]
        public SI1062Data SI1062Data { get; set; }
    }

    [DataContract]
    public class SI1062RequestModel : SIBaseRequestModel
    {
        [DataMember(Name = "input")]
        public SI1062InputModel Input { get; set; }

        /// <summary>
        /// 
        /// </summary>
        /// <param name="businessType">用码业务类型</param>
        /// <param name="termId">终端ID</param>
        /// <param name="termIp">IP信息</param>
        /// <param name="operatorId">操作员编码</param>
        /// <param name="operatorName">操作员姓名</param>
        /// <param name="officeId">医保科室编号</param>
        /// <param name="officeName">科室名称</param>
        public SI1062RequestModel(MedicalInsuranceOption medicalInsuranceOption) : base(medicalInsuranceOption)
        {
            //Infno = MedicalInsuranceConst.BUSINESS1062_FUNCTION;
            Input = new SI1062InputModel();
            Input.SI1062Data = new SI1062Data();
            //Input.SI1062Data.OfficeName = officeName;
            //Input.SI1062Data.OfficeId = officeId;
            //Input.SI1062Data.OperatorName = operatorName;
            //Input.SI1062Data.OperatorId = operatorId;
            //Input.SI1062Data.TermIp = termIp;
            //Input.SI1062Data.TermId = termId;
            //Input.SI1062Data.BusinessType = businessType;
        }
    }
}
